In data processing systems, magnetic disc memories are very frequently used because they have high storage capacity and require a relatively short time for magnetic read/write heads to access a data item contained at any point on a disc from the moment an order is derived to access the data item. Magnetic discs used in such memories carry coded data in concentric circular recording tracks having a width no greater than a few hundredths of a millimeter. The recording tracks are situated on both faces of the discs. Data recorded in the tracks are usually coded in binary form.
Each individual track on a disc is assigned a serial number j, where j is an integer between zero and (N-1), where N is the total number of recorded tracks on a face of a disc. A binary coded expression of a serial number j for a particular track is referred to as the track address. Each track includes magnetic variations, representing binary values for the track addresses and for data recorded between the space provided for the addresses.
Data are read from or written into the tracks by magnetic heads that are positioned on each side of the discs, at a distance of a few tenths of a micron from the disc. To position the heads at a particular track address, the heads are driven radially relative to the disc, while the discs are driven at constant rotational speed by an electric motor.
In currently available magnetic disc memory systems, and, more particularly, in the case of disc memories including a limited number of discs, generally fewer than four or five, the data are arranged on the disc faces as follows. A large amount of space is reserved for data or information to be processed by the data processing system of which the memory is a part; for simplication, these data are referred to as "data to be processed". A relatively small amount of space is reserved for track addresses and for data used to control the position of the magnetic head or heads relative to the tracks. Hereafter, the track addresses and data for servo-controlling the position of the head are referred to as "track identifying data".
In the following discussion, for simplification, only one face of a disc is considered in combination with only one magnetic head. The magnetic head reads and/or writes both the data to be processed and the track identifying data. It is to be understood, however, that the principles of the invention are applicable to a system including multiple discs, each having two faces.
It is the present practice, as described, for example, in U.S. Pat. No. 4,151,571, for the data contained on each face of a disc to be distributed over equal and adjacent circular sectors S.sub.0, S.sub.1 . . . S.sub.i . . . S.sub.n-1. Generally, a disc face is divided into several tens of sectors, most often forty to fifty. As the face of a magnetic disc passes in front of or beneath a magnetic head associated with it, sector S.sub.0 is read by the head before sector S.sub.1, the sector S.sub.1 before the sector S.sub.2, etcetera. Thus, the nomenclature is that sector S.sub.0 precedes sector S.sub.1, which in turn precedes sector S.sub.2, etcetera. Thus, if two data items I.sub.k-1 and I.sub.k follow one another on the same track, having serial number j on the same face, data item I.sub.k-1 precedes data item I.sub.k because data item I.sub.k-1 is read by the head before data item I.sub.k ; conversely, data item I.sub.k is said to follow data item I.sub.k-1. The same reasoning is applicable for several data groups G.sub.k and G.sub.k-1.
Each sector S.sub.i is divided into a relatively large area and a relatively small area. The large area of each sector S.sub.i includes the data to be processed, while the smaller area includes the track identification data. The smaller area of each sector is divided into several zones, referred to as "reference zones"; the number of reference zones on each disc is equal to the number of tracks on the disc, such that each track is associated with one and the same zone.
Binary ones and zeros are designated as "bits". Binary bits can be represented as magnetic variations in a track or as analog or binary electric signals. Binary or logic signals are capable of assuming only one of two values, while an analog signal is defined as a signal that can vary continuously between two positive and/or negative limit values. For simplification, any data item contained on a magnetic disc is designated in the present specification and claims as a bit. In particular, data items for identifying tracks are referred to as "track reference bits", while data items to be processed are referred to as "processed data bits".
To minimize the time required by the magnetic head to access any item of data to be processed, it is necessary for the head to move from one track to another in the shortest possible time. It is also necessary for the head to be positioned precisely with respect to the track. One type of system having a relatively short accessing time employs a voice coil type, electro-dynamic motor which is operated in a "bang-bang" mode of operation. The voice coil motor includes a coil that is linearly displaced within a cylindrically shaped permanent magnet. The coil is mechanically connected by a suspension arm to a carriage for the magnetic head. The magnetic head is driven through an acceleration phase, followed by a deceleration phase, whereby the head is displaced and accurately positioned at a desired track. During the acceleration phase, a constant current of one polarity is applied to the voice coil. The constant current causes the speed of the carriage and of the heads to increase as a linear function of displacement time. Because of the linear increase in speed of the carriage and head, the position of the carriage and head, as a function of time, is represented as an ascending arc of a parabola.
During the deceleration phase, a constant current of the opposite polarity is applied to the voice coil. The speed of the carriage therefore decreases as a linear function of time, while the position of the carriage and head, as a function of time, is represented as a descending arc of a parabola. Upon the completion of the deceleration phase, the carriage speed and the distance which remains for it to traverse to the desired location on the track should be sufficiently small for the head to be stopped above the selected track. A preferred configuration for traversing the heads in the described manner is disclosed in commonly assigned, U.S. Pat. No. 4,166,970.
In the apparatus and method disclosed in U.S. Pat. No. 4,166,970, the address of a track is the only data controlling the magnitude of the current supplied to the voice coil which drives the read/write head. The read/write head is displaced from an initial track A to a desired track B, the addresses of which are derived by a circuit for controlling addresses of the disc associated with the particular head. During the acceleration phase, the motor is supplied by a constant current as the head traverses from track A to track C, between tracks A and B. When the head arrives at track C, the current is reversed and the deceleration phase occurs.
In the method of U.S. Pat. No. 4,166,970, the track addresses are recorded on the discs in reflected binary, i.e., Gray, code. The address of track C is calculated as a function of the addresses of tracks A and B, with all three addresses being expressed in weighted binary or standard code. As the magnetic head is displaced, it reads track addresses which are stored and converted into weighted binary code. During the acceleration phase, the converted addresses are compared with the calculated address of track C. In response to track address C being read by the magnetic head, the deceleration phase is entered. The deceleration phase subsists until the speed of the head and carriage, i.e., movable system, is less than a minimum threshold V.sub.0, as calculated from the read and converted addresses. In response to the speed of the movable system being less than the minimum threshold V.sub.0, addresses of the tracks read by the magnetic head are read and compared with track address B. In response to the read track address being equal to track address B, the movable system is immobilized. A new displacement takes place if the read address differs from the address of track B.
The prior art system disclosed in U.S. Pat. No. 4,166,970 performs both the acceleration and deceleration phases in an open loop manner, i.e., without servo-control. Because of the open loop manner of operation, certain disadvantages occur. In particular, the distance which the head must travel from the moment when the head speed has dropped below the threshold V.sub.0 is quite variable, even in situations wherein the same starting track A and the same final track B are involved. The variable travel distance is due to various internal and external parameters. Exemplary of the internal parameters are displacement direction, temperature, motor characteristics, such as coil inductance and resistance, and force coefficient, while exemplary of the external parameters are dry and viscous friction, effects of weight due to the relatively large disc memory inclination, and external vibrations. It has been found that the variable distance which must be traveled by the head after the head speed has dropped below the threshold V.sub.0 necessitates several successive operations to reach the desired, final track B. Thereby, the time required by the head to access the data to be processed is relatively long. A second disadvantage which has been found through experimentation is that the prior art method does not function properly if there is a small separation between the starting track A and the final track B. In one particular situation, it was found that if the separation between the starting and final tracks was less than six, the method would not function properly. A further disadvantage is that is is difficult of obtain short access times with the prior art method.
It is, accordingly, an object of the present invention to provide a new and improved method of and apparatus for displacing a movable system with respect to a data carrier.
Another object of the present invention is to provide a new and improved apparatus for and method of controlling the movement of a magnetic read/write head of a magnetic disc memory system so that the head is very accurately and quickly driven from a starting track A to a desired final track B.
Another object of the present invention is to provide a new and improved apparatus for and method of driving a magnetic read/write head between track A and track B of a magnetic disc wherein internal and external parameters tending to increase the time required to drive the head between the tracks are circumvented.
A further object of the present invention is to provide a new and improved system for and method of driving a magnetic read/write head starting track A and a desired final track B of a magnetic disc wherein the same method and apparatus can be utilized for closely spaced and relatively distant tracks.